var slime_member_model = require("../library/member.js");

module.exports = {
    
    /**
     * @api {model} slime_brands slime_brands
     * @apiDescription 品牌主档表
     * @apiGroup database
     * @apiParam {String} id 主键
     * @apiParam {String} ouid 组织单元ID
     * @apiParam {String} name 品牌名
     * @apiParam {Boolean} is_removed 删除标识
     */
    "slime_brands" : {
        "id"         : @lab.types.id(),
        "ouid"       : @lab.types.string(),
        "name"       : @lab.types.string(),
        "is_removed" : @lab.types.bool()
    },
    /**
     * @api {model} slime_categories slime_categories
     * @apiDescription 品牌品类表
     * @apiGroup database
     * @apiParam {String} id 主键
     * @apiParam {String} ouid 组织单元ID
     * @apiParam {String} name 品牌名
     * @apiParam {String} parent_id 父品类ID
     * @apiParam {Boolean} is_removed 删除标识
     */
    "slime_categories" : {
        "id"         : @lab.types.id(),
        "ouid"       : @lab.types.string(),
        "name"       : @lab.types.string(),
        "parent_id"  : @lab.types.string(),
        "is_removed" : @lab.types.bool()
    },

    /**
     * @api {model} slime_system_settings slime_system_settings
     * @apiDescription 系统参数
     * @apiGroup database
     * @apiParam {String} id 主键
     * @apiParam {String} key 参数的类型
     * @apiParam {String} value 参数的值
     * @apiParam {Timestamp} last_update 最后更新时间
     */
    "slime_system_settings" : {
        "id"    : @lab.types.id(),
        "key"   : @lab.types.string(),
        "value" : @lab.types.string(),
        "last_update" : @lab.types.date(),
    },

    /**
     * @api {model} slime_xlsx_imports slime_xlsx_imports
     * @apiDescription 导入的Excel记录
     * @apiGroup database
     * @apiParam {String} id 主键
     * @apiParam {String} name 导入Excel的类型
     * @apiParam {String} uid 导入Excel的用户
     * @apiParam {String} action 导入Excel后执行的操作
     * @apiParam {Timestamp} create_date 导入Excel的时间
     */
    "slime_xlsx_imports" : {
        "id"    : @lab.types.id(),
        "name"  : @lab.types.string(),
        "uid"   : @lab.types.string(),
        "data"  : @lab.types.objects(),
        "action" : @lab.types.string(),
        "create_date" : @lab.types.date()
    },

    /**
     * @api {model} slime_operation_unit_settings slime_operation_unit_settings
     * @apiDescription 不同组织单元的配置信息
     * @apiGroup database
     * @apiParam {String} id 主键（组织单元ID）
     * @apiParam {String} activity_default_notification_url 默认通知后URL
     * @apiParam {String} activity_default_qrcode_url 默认访问的URL
     * @apiParam {String[]} coupon_types 支持的券类型
     * @apiParam {String[]} activity_types 支持的活动类型
     * @apiParam {String[]} consume_types 支持的核销类型
     * @apiParam {String[]} activity_external_sources 支持的活动同步渠道
     */
    "slime_operation_unit_settings": {

        "id": @lab.types.id(),

        "activity_default_notification_url": @lab.types.string(),

        "activity_default_qrcode_url": @lab.types.string(),

        "coupon_types" : @lab.types.strings(),

        "activity_types" : @lab.types.strings(),

        "consume_types"  : @lab.types.strings(),

        "activity_external_sources" : @lab.types.strings(),

        "code_pattern_brand_skus" : @lab.types.string(),

        "code_seq_brand_skus" : @lab.types.number(),

        "code_pattern_trader_skus" : @lab.types.string(),

        "code_seq_trader_skus"  : @lab.types.number(),

    },

    /**
     * @api {model} slime_regions slime_regions
     * @apiDescription 地区表
     * @apiGroup database
     * @apiParam {String} id 主键
     * @apiParam {String} name 地区名称
     * @apiParam {String} code 地区编码
     * @apiParam {String} member_no 会员号
     * @apiParam {String} name 昵称
     * @apiParam {String} gender 性别 
     * @apiParam {String} id_card 身份证
     * @apiParam {String} real_name 会员姓名
     * @apiParam {String} phone 会员手机
     * @apiParam {String} email 会员邮箱
     * @apiParam {String} image_url 会员头像
     * @apiParam {String} country 国家
     * @apiParam {String} province 省
     * @apiParam {String} city 市
     * @apiParam {String} district 区
     * @apiParam {Timestamp} birthday 会员生日
     */
    "slime_regions"  : {

        "id"           : @lab.types.id(),
        "name"         : @lab.types.string(),
        "code"         : @lab.types.string(),
        "path"         : @lab.types.strings(),

        "country"      : @lab.types.string(),
        "province"     : @lab.types.string(),
        "city"         : @lab.types.string(),
        "district"     : @lab.types.string(),
        "street"       : @lab.types.string(),

        "depth"        : @lab.types.number(),
        "lft_val"      : @lab.types.number(),
        "rgt_val"      : @lab.types.number(),

        "parent_id"    : @lab.types.string(),
        "parent_code"  : @lab.types.string(),
        "parent_name"  : @lab.types.string(),

        "has_children" : @lab.types.bool(),
        "is_removed"   : @lab.types.bool(),
    }
}